/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DAOInterface;

/**
 *
 * @author Fabian
 */
public abstract class AbstractDAOMapFactory {
    
    /**
     * 
     * @return
     */
    public abstract DAOConnection getDBConnector();
    /**
     * 
     * @return
     */
    public abstract DAOXMLConnection getXMLConnector();
    /**
     * 
     * @return
     */
    public abstract DAODatasetConnection getDatasetConnector();
        
    /**
     * 
     * @param type
     * @return
     */
    public static AbstractDAOMapFactory getAbstractControllerFactory(int type)
    {
        
        switch(type){
            
            case 0:
                return new DAOMySQLMapFactory();
                
            case 1:
                return new DAOOracleMapFactory();
                
            case 2:
                return new DAOPostGreSQLMapFactory();
                
            case 3:
                return new DAOSQLserverMapFactory();
                
            case 4:
                return new DAOXMLMapFactory();
                
            case 5:
                return new DAODatasetMapFactory();
        
        }
        return new DAOMySQLMapFactory();
    }
    
}
